package com.nidu.demo.menu.convertor;

import com.nidu.demo.convertor.MapStructConfig;
import com.nidu.demo.menu.dto.MenuListQry;
import com.nidu.demo.menu.dto.MenuPageQry;
import com.nidu.demo.menu.dto.MenuQry;
import com.nidu.demo.menu.dto.MenuTreeQry;
import com.nidu.demo.menu.model.MenuCriteria;
import org.mapstruct.Mapper;

/**
 * 菜单查询条件转换器
 *
 * @author nidu
 */
@Mapper(config = MapStructConfig.class)
public interface MenuCriteriaConvertor {

    /**
     * 单个查询条件转换
     */
    MenuCriteria toDataObject(MenuQry qry);

    /**
     * 列表查询条件转换
     */
    MenuCriteria toDataObject(MenuListQry listQry);

    /**
     * 分页查询条件转换
     */
    MenuCriteria toDataObject(MenuPageQry pageQry);

    /**
     * 树形查询条件转换
     */
    MenuCriteria toDataObject(MenuTreeQry treeQry);
}
